package com.rojored.remote.dsDelegateTestHelpers
{

/**
 *  Example object for testing delegate encoding.
 */
public class ObjectA
{

    //--------------------------------------------------------------------------
    //
    //  Constructor
    //
    //--------------------------------------------------------------------------

    /**
     *  Constructor
     */
    public function ObjectA()
    {
        super();
    }

    //--------------------------------------------------------------------------
    //
    //  Properties
    //
    //--------------------------------------------------------------------------

    //--------------------------------------
    //  transientProperty
    //--------------------------------------

    [Transient]

    /**
     *  A transient property
     */
    public var transientProperty:String;

    //--------------------------------------
    //  convenienceProperty
    //--------------------------------------

    [Convenience]

    /**
     *  A convenience property
     */
    public var convenienceProperty:String;

    //--------------------------------------
    //  propertyA
    //--------------------------------------

    /**
     *  A property
     */
    public var propertyA:String;

    //--------------------------------------
    //  propertyB
    //--------------------------------------

    /**
     *  Another property
     */
    public var propertyB:Number;

    //--------------------------------------
    //  referencedPropertyA
    //--------------------------------------

    [Reference]

    /**
     *  A property marked as referenced but which doesn't have an id property.
     */
    public var referencedPropertyA:ObjectA;

    //--------------------------------------
    //  refeferencedPropertyB
    //--------------------------------------

    [Reference]

    /**
     *  A property marked as referenced.
     */
    public var refeferencedPropertyB:ObjectB;
    
    //--------------------------------------
    //  listOfReferences 
    //--------------------------------------

    [Reference]
    
    /**
     *  A list of referenced objects.
     */
    public var listOfReferences:Array;
}
}
